h, m = [int(i) for i in input().split(':')]
h1 = int(h)
m1 = int(m)
m1 += 1
if m1 == 60:
m1 = 0
h1 += 1
if h1 == 24:
h1 = 0
if m1 == 0:
m = '00'
elif m1 < 10:
m = '0' + str(m1)
else:
m = str(m1)
if h1 == 0:
h = '00'
elif h1 < 10:
h = '0' + str(h1)
else:
h = str(h1)
while h != m[::-1]:
m1 += 1
if m1 == 60:
m1 = 0
h1 += 1
if h1 == 24:
h1 = 0
if m1 == 0:
m = '00'
elif m1 < 10:
m = '0' + str(m1)
else:
m = str(m1)
if h1 == 0:
h = '00'
elif h1 < 10:
h = '0' + str(h1)
else:
h = str(h1)
print(h + ':' + m)
#include <bits/stdc++.h>
using namespace std;
#define FastIO ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL)
bool check(int h, int m){
string hh = to_string(h);
string mm = to_string(m);
if(hh.size() < 2)hh = "0" + hh;
if(mm.size() < 2)mm = "0" + mm;
reverse(mm.begin(), mm.end());
if(hh == mm)return 1;
return 0;
}
string mk(int a){
string s = to_string(a);
if(s.size() < 2)s = "0" + s;
return s;
}
int main() {
FastIO;
string s;
cin >> s;
string hh = s.substr(0, 2), mm = s.substr(3, 2);
int h = stoi(hh), m = stoi(mm);
while(1){
m++;
if(m == 60){
m = 0;
h++;
}
if(h == 24){
h = 0;
}
if(check(h, m))break;
}
cout << mk(h) << ":" << mk(m) << '\n';
return 0;
}
432D - Prefixes and Suffixes | 486A - Calculating Function |
1373B - 01 Game | 1187A - Stickers and Toys |
313B - Ilya and Queries | 579A - Raising Bacteria |
723A - The New Year Meeting Friends | 302A - Eugeny and Array |
1638B - Odd Swap Sort | 1370C - Number Game |
1206B - Make Product Equal One | 131A - cAPS lOCK |
1635A - Min Or Sum | 474A - Keyboard |
1343A - Candies | 1343C - Alternating Subsequence |
1325A - EhAb AnD gCd | 746A - Compote |
318A - Even Odds | 550B - Preparing Olympiad |
939B - Hamster Farm | 732A - Buy a Shovel |
1220C - Substring Game in the Lesson | 452A - Eevee |
1647B - Madoka and the Elegant Gift | 1408A - Circle Coloring |
766B - Mahmoud and a Triangle | 1618C - Paint the Array |
469A - I Wanna Be the Guy | 1294A - Collecting Coins |